package com.yqg.protection.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * warn_ls 实体类
 *
 * @author zxf
 * @since 2025-08-30
 */
@Getter
@Setter
@TableName("warn_ls")
@ApiModel(value = "WarnLs对象", description = "水压探测器报警数据表")
public class WarnLs implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("ID（主键）")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("设备ID")
    private Long equipmentInputStoreId;

    @ApiModelProperty("发送时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime sendTime;

    @ApiModelProperty("业务数据类型")
    private Integer businesstype;

    @ApiModelProperty("设备ID")
    private Integer smokeid;

    @ApiModelProperty("设备MAC")
    private String mac;

    @ApiModelProperty("设备类型")
    private String devicetype;

    @ApiModelProperty("信号强度")
    private Integer dsignal;

    @ApiModelProperty("电池状态")
    private Integer batterys;

    @ApiModelProperty("电量(%)")
    private Integer volvalue;

    @ApiModelProperty("电压值(mV)")
    private Integer voltagevalue;

    @ApiModelProperty("IMSI")
    private String imsi;

    @ApiModelProperty("事件类型")
    private Integer messagetype;

    @ApiModelProperty("消息ID")
    private Integer hxmonitorid;

    private Integer type;

    @ApiModelProperty("事件代码")
    private String code;

    @ApiModelProperty("监控数据")
    private String monitorname;

    @ApiModelProperty("监测值")
    private String data;

    @ApiModelProperty("数据单位")
    private String dataunit;

    @ApiModelProperty("采集时间")
    private Long collectiontime;

    @ApiModelProperty("水压状态")
    private Integer wpstatus;

    @ApiModelProperty("变化率状态")
    private Integer wrstatus;

    @ApiModelProperty("倾斜状态")
    private Integer wdstatus;

    @ApiModelProperty("震动报警")
    private Integer wkstatus;

    @ApiModelProperty("漏水状态")
    private Integer wostatus;

    @ApiModelProperty("本次流量")
    private String singleflow;

    @ApiModelProperty("累计流量")
    private String totalflow;

    @ApiModelProperty("设备型号")
    private String dtypename;
    @ApiModelProperty("设备安装的站点地址")
    private String siaddress;
    @ApiModelProperty("设备安装的楼层")
    private String sitelname;
    @ApiModelProperty("设备安装的详细地址")
    private String installaddress;
    @ApiModelProperty("经度")
    private Long longitude;
    @ApiModelProperty("纬度")
    private Long latitude;
}
